Error processing SSI file
Leadtools.Dicom.Common

Show in webframe

Set(DicomDataSet,Boolean,Object[]) Method






The data sets to set information into.
If set to true, add optional elements from the class instance.
The instances that have the correct attributes.
Sets the information in the data set from the specified class instances.
Syntax
[ExtensionAttribute()]
public static void Set( 
   DicomDataSet ds,
   bool addOptional,
   params object[] instances
)
'Declaration
 
<ExtensionAttribute()>
Public Overloads Shared Sub Set( _
   ByVal ds As DicomDataSet, _
   ByVal addOptional As Boolean, _
   ByVal ParamArray instances() As Object _
) 
'Usage
 
Dim ds As DicomDataSet
Dim addOptional As Boolean
Dim instances() As Object
 
DicomExtensions.Set(ds, addOptional, instances)

Parameters

ds
The data sets to set information into.
addOptional
If set to true, add optional elements from the class instance.
instances
The instances that have the correct attributes.
Example

This example omits optional items from the data set.

Copy Code  
Imports Leadtools.Dicom.Common.DataTypes
Imports Leadtools.Dicom.Common.Extensions
Imports Leadtools.Dicom
Imports Leadtools.Dicom.Common.Editing.Converters
Imports Leadtools.Dicom.Common.Editing

Public Class PatientInfoTest
   Private _PatientName As PersonName

   <Element(DicomTag.PatientName, Optional:=True), TypeConverter(GetType(PersonNameConverter))> _
   Public Property PatientName() As PersonName
      Get
         Return _PatientName
      End Get
      Set(value As PersonName)
         _PatientName = Value
      End Set
   End Property

   Private _PatientID As String
   <Element(DicomTag.PatientID, Optional:=False)> _
   Public Property PatientID() As String
      Get
         Return _PatientID
      End Get
      Set(value As String)
         _PatientID = Value
      End Set
   End Property
End Class

<TestMethod> _
Public Sub OptionalTest()
   Dim info As PatientInfoTest = New PatientInfoTest()

      ' Initialize the DICOM engine
   DicomEngine.Startup()

   Dim ds As DicomDataSet = New DicomDataSet()

      ' Initialize an empty dataset
   ds.Initialize(DicomClassType.Undefined, DicomDataSetInitializeFlags.None)

   '
   ' Initialize Patient Information
   '
   info.PatientName = New PersonName("LAST^FIRST")
   info.PatientID = "123456"

   '
   ' Set the patient information
   '
   ds.Set(False, info)

   '
      ' Patient Name should not exist since we did not add any optional elements
   '
   Dim element As DicomElement = ds.FindFirstElement(Nothing, DicomTag.PatientName, False)

   If element Is Nothing Then
      Console.WriteLine("Patient Name not added")
   End If
   DicomEngine.Shutdown()
End Sub
using Leadtools.Dicom.Common.DataTypes;
using Leadtools.Dicom.Common.Extensions;
using Leadtools.Dicom;
using Leadtools.Dicom.Common.Editing.Converters;
using Leadtools.Dicom.Common.Editing;

public class PatientInfoTest
{
    private PersonName _PatientName;

    [Element(DicomTag.PatientName, Optional = true)]
    [TypeConverter(typeof(PersonNameConverter))]
    public PersonName PatientName
    {
        get { return _PatientName; }
        set { _PatientName = value; }
    }

    private string _PatientID;
    [Element(DicomTag.PatientID, Optional = false)]
    public string PatientID
    {
        get { return _PatientID; }
        set { _PatientID = value; }
    }
}        

[TestMethod]
public void OptionalTest()
{            
    PatientInfoTest info = new PatientInfoTest();

    // Initialize the DICOM engine
    DicomEngine.Startup();

    DicomDataSet ds = new DicomDataSet();

    // Initialize an empty dataset
    ds.Initialize(DicomClassType.Undefined, DicomDataSetInitializeFlags.None);            

    //
    // Initialize Patient Information
    //

    info.PatientName = new PersonName("LAST^FIRST");
    info.PatientID = "123456";

    //
    // Set the patient information
    //


    ds.Set(false,info);

    //
    // Patient Name should not exist since we did not add any optional elements
    //


    DicomElement element = ds.FindFirstElement(null, DicomTag.PatientName, false);

    if (element == null)
        Console.WriteLine("Patient Name not added");
    DicomEngine.Shutdown();
}
Requirements

Target Platforms

See Also

Reference

DicomExtensions Class
DicomExtensions Members
Overload List

Error processing SSI file
   Leadtools.Dicom.Common requires a Medical toolkit license and unlock key. For more information, refer to: LEADTOOLS Toolkit Features